import request from "@/utils/request.ts";
import type { GetVerificationResponse, ExportScoresResponse } from "@/api/common/type.ts";
import axios from "axios";

enum API {
    COMMON_URL = "/common",
    GET_VERI = "/common/get-verification"
}
//暴露班级管理的接口
// 获取验证码的请求函数
export const reqSendVerificationCode = (email: string): Promise<GetVerificationResponse> => {
    return request.get<GetVerificationResponse>(`${API.GET_VERI}/${email}`)
        .then(response => response.data) // 直接返回 data 部分
        .catch(error => {
            if (error.response) {
                // 请求已发出，但服务器响应的状态码不在 2xx 范围内
                console.error('Error:', error.response.data);
                throw new Error(error.response.data.msg || '请求失败');
            } else {
                // 其他错误（如网络错误）
                console.error('Error:', error.message);
                throw new Error('请求失败');
            }
        });
};

// 导出该班级所以小组成绩的请求接口
export const reqExportScores = (classId: number): Promise<ExportScoresResponse> => {
    return axios.get(`${API.COMMON_URL}/get-verification/${classId}`);
};
